//兔子问题   斐波那契数列
//迭代方法做
var sumNext = 0
var sum1 = 2
var sum2 = 2
function iteration(n) {
    sumNext=0
    if (n <= 0) {
        return "输入的月数不正确"
    }
    if (n == 1 || n == 2) {
        return 2
    }
    for (i = 3; i <= n; i++) {
        sumNext = sum1 + sum2
        sum1 = sum2
        sum2 = sumNext
    }
 return sumNext
}



//递归做


function recursion(n) {
    if (n == 1 || n == 2) {
        return 2
    } else if (n <= 0) {
        return "输入的月数不正确"
    } else {
        var x = recursion(n - 1) + recursion(n - 2)
        return x
    }
}

console.log(recursion(20))

var btn = document.querySelector("button")
btn.onclick = function btnc() {
    var num1 = document.querySelector("input");
    var n = parseInt(num1.value);
    var result = document.querySelector("textarea")
    result.innerHTML = recursion(n)
}



//难点 
//不在于怎么把代码写出来
//而是怎么把一个现实中的问题转化为计算机能懂的问题
//计算机本质上非常笨，要确保你的指令毫无歧义
//怎样转化一个问题
//整个问题当中所有的已经知道什么，要求的是什么
//它们之间可能存在什么样的关系？
//如何用数学表述从已知量到未知量的过程？   算法
//在计算机中如何记录这种过程？